package com.demo.common.controller;

import com.demo.common.model.Blog;
import com.jfinal.core.Controller;
import com.jfinal.render.JsonRender;
import com.jfinal.upload.UploadFile;
/**
 *  JFinal Controllrt 传参
 * @author xwalker
 *
 */
public class ParamController extends Controller {
	public void index(){
		render("index.jsp");
	}
	public void domain(){
		renderText("使用getModel(Blog.class, \"blog\")得到参数："+getModel(Blog.class, "blog"));
	}
	/**
	 * URL 超链接传参  一个参数
	 */
	public void urloneparam(){
		String sb="";
		//根据参数名称
		sb+="根据参数名称getParaToInt(\"param\")得到参数："+getParaToInt("param");
		//根据顺序
		sb+="\ngetPara(0)得到参数："+getPara(0);
		//直接获取
		sb+="\ngetPara()得到参数："+getPara();
		renderText(sb);
	}
	/**
	 * URL 超链接传参  多个参数
	 */
	public void urlmoreparam(){
		//根据参数名称
		String s="使用getParaToInt(\"param1\")得到参数："+getParaToInt("param1")+":"+getParaToInt("param2");
		//根据顺序
		s+="\ngetParaToInt(0)得到参数："+getParaToInt(0)+":"+getParaToInt(1);
		renderText(s);
	}
	/**
	 * Form提交
	 */
	public void form(){
		//根据参数名
		renderHtml("使用getPara(\"name\")得到参数："
				+ "<br>getPara(\"name\")姓名:"+getPara("name")
				+ "<br/>getPara(\"age\")年龄："+getParaToInt("age")
				+ "<br/>getParaToDate(\"birthday\")生日："+getParaToDate("birthday")
				+ "<br>getParaToInt(\"department\")部门:"+getParaToInt("department")
				+ "<br>getParaToInt(\"posation\")职位:"+getParaToInt("posation")
				+ "<br>getPara(\"desc\")简介:"+getPara("desc")
				);	
	}
	/**
	 * ajax get提交
	 */
	public void ajaxget(){
		//根据参数名称
		String msg="AJAX GET 使用getParaToInt(\"param\") 根据参数名称得到参数:<br/>param="+getParaToInt("param");
		//根据顺序
		renderJson("msg",msg+"\nAJAX GET 使用getParaToInt(0)根据顺序得到参数:<br/>param="+getParaToInt(0));
	}
	/**
	 * ajax post提交
	 */
	public void ajaxpost(){
		//根据参数名称
		renderJson("msg","AJAX POST 使用getParaToInt(\"param1\")得到参数:<br/>param1="+getParaToInt("param1")+"<br/>param2="+getParaToInt("param2"));
	}
	/**
	 * 测试上传
	 */
	public void testupload(){
		render("upload.jsp");
	}
	
	/**
	 * Form post file upload
	 */
	public void formupload(){
		UploadFile file=getFile("img");
		renderHtml("使用getPara(\"name\")得到参数："
				+ "<br>getPara(\"name\")姓名:"+getPara("name")
				+ "<br/>getParaToInt(\"age\")年龄："+getParaToInt("age")
				+ "<br/>getParaToDate(\"birthday\")生日："+getParaToDate("birthday")
				+ "<br>getParaToInt(\"department\")部门:"+getParaToInt("department")
				+ "<br>getParaToInt(\"posation\")职位:"+getParaToInt("posation")
				+ "<br>getPara(\"desc\")简介:"+getPara("desc")
				+ "<br>getFile(\"img\")得到头像：<img src="+(file!=null?"/upload/"+file.getFileName():"/assets/css/imgs/notupload.png")+" />");
		
	}
	/**
	 * ajax post file upload
	 */
	public void ajaxupload(){
		UploadFile file=getFile("img");
		//System.out.println(getPara("desc"));
//		renderJson("imgurl","http://localhost/upload/"+file.getFileName());
		//这个虽然是forIE 但是其他浏览器也有效 ie也好用
		render(new JsonRender("imgurl","/upload/"+file.getFileName()).forIE());
	}

}
